In this course you will use Domino Designer 8 to create an application used by Notes clients to create and read documents. You will develop your application using most of the design elements available in Domino Designer.
At the beginning of the course you will create a new database, and as the course progresses, numerous exercises will give you the opportunity to add features to the application.
When you finish developing the application, you will learn the proper steps to put it into production, as well as how to maintain the data and design of the database.
This course will teach you how to: • decide which applications are appropriate for Notes and how Notes applications can be structured to accomplish their objectives • use Domino Designer 8 to build a basic application that runs on a Domino server and is used by Notes clients • design applications using Pages, Forms, Fields, Views, Framesets, Outlines, Actions, and Agents • work with the formula language, LotusScript, and JavaScript languages • establish relationships between documents through data inheritance and a Response Document hierarchy • secure the application by assigning user rights and roles in the Database, Form, and View Access Control Lists • embellish the appearance of Forms and Pages using style sheets and add general and context-sensitive help • create standard and calendar Views that display document data • make it easy for users to navigate and control the application • use shared design elements, including Shared Resources, Files, and Code • use Templates to create new databases using your design and Master Templates to centralize your code changes • rollout a new application into a production environment • maintain the database data and design • describe the different ways to exchange data with other database systems.
Course Topics:
1 - Getting Started with Domino Designer Notes Databases Notes database structure Composite Applications Designer experience Programming languages Start Domino Designer Store database on Local drive or on Domino Create new database Exercise: Create new database Domino Designer Quick Tour Domino Designer quick tour Designer Bookmarks Add tools to Domino Designer Adjunct programming tools Database Access Control List Exercise: Database ACL Database properties Exercise: Set Database properties Design element locking How/where applications are executed Backward compatibility with previous versions
2 - Forms to Create Documents Form Basics What is a Form? The Form is not the document Form designer concerns Design Form Form design panes Form name Showing the Form on menus Cascaded Form names Accelerator key assignment Default database form Form background Save the design element Form Design List Test the Form Exercise: Create and test new Form Fields on the Form Purpose of Fields Field versus Item Add Field Edit existing Field Copy and paste Fields Text properties Field properties Common Field names Internal Field names Reserved Field names Example of reserved Field name: SaveOptions Example reserved Field: Form Data types and Field types Control tab Advanced tab Exercise: Add Fields to Product Form Rich Text Fields Rich Text Lite Fields Default and Computed Field Formulas Field type and its events Example Default Value formulas Formula language function syntax Auto-completion Programmers Pane properties Search and replace What Field formulas can contain Programming rules Exercise: Add Default Value formulas Computed formulas Exercise: Add Computed formulas Debugging Field formulas Form evaluation sequence What you see is not always what you get
3 - Views of Documents Create New View View characteristics Create new View Save and Customize Exercise: Create a View View Column Formulas Add View columns Column properties Info tab Understand the data Column restrictions Column Value Example formulas Exercise: Column Values Special View-only functions Document statistics View Column Properties Column properties Format tabs Exercise: Advanced Format for columns Display values as icons Exercise: Display values as icons Sorted columns Exercise: Sorted column Categorized column Exercise: Categorize column Column totals Exercise: Column totals Use value as color Exercise: Use value as color Advanced tab: Hide column Exercise: Hide column Advanced tab: Programmatic Name View Selection View Selection options Simple Search Conditions options Select by Formula Time-based selections Select by document property Selection by exclusion Fuzzy selections Exercise: Out of Stock View Private Views and select by user name Normalizing user names Exercise: Sales Rep Private View Change the design of a Private View View Properties View name and alias View style Options tab Style tab Advanced tab Exercise: View properties View size View index refresh Folders Purpose of Folders Shared versus private Folders Special design considerations Delete document error Exercise: Create shared Folder
4 - Application Layout and Navigation Application Structure Developer decisions Application purpose Applications NOT right for Domino Applications right for Notes Application structure options Default structure Increasing detail Linear progression Random access Actions Inherent Notes client capabilities Types of Actions Action Pane Working in the Action Pane Create Action Action with Sub Action System Actions Simple Actions Coding the Action Action Bar properties Hidden Actions Hide When Exercise: Form navigation using Actions Using @Commands Syntax guidelines @Command evaluation sequence View Actions Exercise: View Action Example Hide When formulas Hide When and the Evaluate actions View property Exercise: Context-sensitive View Action Pages What is a Page? Create Page Page name Exercise: Create container Page Hotspot button Exercise: Welcome Page with a button Computed Text Exercise: Page with Computed Text Outline Control History of the Notes window Outline Control features Create an Outline Step 1: Create Outline and Outline Entries Exercise: Create Outline and Outline Entries Step 2: Embed the Outline Embedded Outline properties Info tab Example Outlines Exercise: Embed the Outline on a Page Special Entries Image Resources Image Resource properties Rollover images and image wells Exercise: Add Image Resources Exercise: Add Image Resources to Outline Entries Framesets Frames and Framesets Create Frameset What usually goes into Frames Assign Frame content Special Frame names and document preview Self-framing design elements Targeting content to Frames Special target names Notes-only Frame features Exercise: Create Frameset Database Launch Options Default database launch property Control database launch options Database Postopen event for Notes clients Exercise: Database launch Exercise: Fix a small glitch
5 - Accurate Data Entry Editable Field Translation and Validation Input Translation event Input Validation event Triggering validation from the Save Action Exercise: Add Editable Field formulas Field onBlur event Field onBlur using Javascript Language choice for Field operations Form flow Automatically refresh fields List Fields Where the choices come from Enter choices Keyword synonyms Exercise: Keyword synonyms Use formula for choices Use Address dialog or Access Control List for choices Use View dialog for choices Exercise: Use View dialog for choices Checkbox and radio button options Refresh on change Allow multiple values in Fields Multiple value items and Views Edit versus Read mode display
6 - Response Forms and Views Formulas Inherit Values Why inherit data? Configuring inheritance Using inheritance Inheriting data across databases Document Universal Note ID (UNID) and NoteID Exercise: Inherit data Inherit entire selected document into Rich Text Field Response Documents
Three types of documents From response to document and back again Design response Form @Commands to create response documents Response with reference View Response documents Design a hierarchical View Select response documents in a View Common columns Responses only column Responses only column formula Indicating response documents in a View View column totals Exercise: Response documents
7 - More Views of Documents Embedded Views Embedded View How to embed a View Single category View Exercise: Single category View View Filter Embedded Editor Calendar Views Calendar features Create a Calendar View Style tab Font tab Calendar format Two types of entries Defining just the required columns Defining all the columns Exercise: Create Calendar View Exercise: Show out of stock products Optional Exercise: Calendar View Events Embedded Date Picker Grid-Style Views View properties View-level edit caveats Enabling cell edits Column programmatic name Inviewedit event code NEWENTRY_REQUEST Cycling through allowable values Exercise: Alter All Products View to be Grid-style
8 - Security At All Levels Authenticated User Names Security model Register Notes users Authentication process Anonymous users Hierarchical names Authenticated name Alternate name Domino Administrator responsibilities Developer responsibilities Database Access Control List Access Control List ACL Entries Add users to the ACL Acceptable ACL Entries Standard settings User Type Conflicting/overlapping access Explicit versus Effective Access Maximum Internet name & password access Access privileges Roles Create and assign a role Exercise: Define ACL and roles Set Administration Server Enforce Consistent ACL Enforce Consistent ACL and new replicas, new copies Form, View, and Document Security Form security Anonymous Form View security Name storage @UserName and data type Authors Fields Exercise: Design element access and Authors Field Authors Fields you should always include Readers Fields Implied readership Readers/Authors Fields interaction Author access and replication @Name Determining user access @Author Determining user role membership Signed documents Controlled Access Sections Sections Controlled Access Sections refine authorship Define Controlled Access Section Controlled Access Sections and true document security Controlled Access Sections and signed Fields Field Security Editor access to update Example: Editor access to update Input Enabled event for Fields Exercise: Input Enabled event Field encryption Task 1: Create a Secret Key Task 2: Distribute the key Task 3: Enable the Field(s) for encryption Task 4: Associate the key Exercise: Encrypt pricing details Encryption caveats Changing/ removing document encryption
9 - Embellishing the User Interface Form Design and Layout Non-scrolling header Layers Tables Create table Nested tables Exercise: Tabbed and nested tables Cascading Style Sheets CSS attributes of objects Add a style sheet Exercise: Add a style sheet Pictures Helping the User On Open Form properties Window Titles Exercise: Add Window Title Default printout header and footer Database Icon Exercise: Database/Bookmark Icon About/Using this Application onHelp and HelpRequest events Field-level help Enable instant spell check Text popup Formula popup Hotspots Link Hotspot Action Hotspot Remove a Hotspot Image maps
10 - Application Rollout and Maintenance Database Rollout Rollout checklist Basic tab in Database properties Info tab in Database properties Design tab in Database properties Advanced tab in Database properties Notes client ECLs and signatures Re-sign the design Manually change the ECL Enforcing standard ECLs Mail-In Database document Testing cycles Mitigate performance problems Create archive of design Design Synopsis Verify ACL Server and Domain-wide ACL management Exercise: Database Catalog Verify Server document Copy database to Domino Server Create replicas Encrypt databases Full Text/Domain Search Indexes Database Library Librarians Create Database Library Exercise: Publish application Notify Users Monitor database use Update Agents Agent categories Four components of every Agent Create new Agent Agent list Agents and security How formulas operate in update Agents Trigger: Running the Agent from the menu Search: SELECT statements Search: Full text search Search: Cannot select response documents Action: FIELD statement Examples: Field and document-related Actions Exercise: Review ConvertInStock Agent Shared Code Subforms Subform examples Create Subform Exercise: Create and insert Subform Computed Subforms Example: Computed Subform Insert a Computed Subform Shared Subform caveat Shared Fields Add Shared Field to Form Work with Shared Fields Shared View Columns Insert Shared Column Find Views where a Shared Column has been used Shared Actions Shared Code and performance Sharing design elements from other databases Shared design element caveats Templates Templates versus Master Templates Create a new database using a Template Create a Template Second use for a Template Default ACL settings in a Template Exercise: Templates Design maintenance Create a Master Template Inherit the design of a Master Template Entire database design refresh Specific design element refresh Blocking design element refresh/replace Copy and paste design elements Exercise: Master Templates Database properties that are replaced/refreshed Master Template strategies One-to-many Example: One-to-many One-to-one Many-to-one Hide design Single Copy Template SCT facts Configure Single Copy Template Where to do your design work Template auditing Data Exchange Requirements Built-in access from the inside out Programmatic access to Notes data Drivers and services for Notes/Domino to access external data Drivers used by external applications to access Notes data Web access to Notes data Off-the-shelf applications that access Notes data
Course Prerequisites:
This course relies on the WYSIWYG tools in Domino Designer and only introduces the programming languages used in Domino Designer, so a programming background is not required.
This course is part of a series of Domino Designer 8 training courses.
Domino Designer 8: Basic Notes Applications provides the base knowledge for this additional training:
Client Track • Configure Domino to use DB2 as a database engine and build applications that access relational data, DB2 for Domino 8 Administrators and Developers. • Specialize in programming Notes applications to respond to built-in user interface features, Domino Designer 8: Special Notes Features. • Convert an application written for Notes clients to be used in browsers, Domino Designer 8: Basic Browser Applications. • Provide data to cutting-edge Web applications, Domino Designer 8: Web Agents and Web Services.
Language Track. These languages apply to both Notes and browser clients: • Learn sophisticated application techniques that fully exploit the formula language in Domino Designer 8: Formula Language. • Develop sophisticated applications and Agents with LotusScript in Domino Designer 8: LotusScript. • Add powerful client-side scripting to browser applications in Domino Designer 8: JavaScript.
Course Audience:
This course is designed for individuals new to Domino Designer but who have:
significant experience using the Notes 8 client experience with another programming language, or with any worksheet or word processor macro language. This course relies on the WYSIWYG tools in Domino Designer and only introduces the programming languages used in Domino Designer, so a programming background is not required.